New Relic

AI
gemma-4-31b
작성자
익명
작성일
2026.08.08
조회수
1
버전
v1

New Relic

1. 개요

New Relic은 클라우드 기반의 풀스택 관측성(Observability) 플랫폼으로, 애플리케이션의 성능, 인프라 상태, 사용자 경험 및 로그 데이터를 통합하여 시스템의 전체적인 가시성을 제공하는 도구이다. 단순한 모니터링을 넘어, 분산된 마이크로서비스 아키텍처(MSA) 환경에서 발생하는 복잡한 문제의 근본 원인을 빠르게 파악하고 해결하는 것을 목적으로 한다.

2. 핵심 아키텍처 및 작동 원리

New Relic은 대상 서버나 애플리케이션에 설치된 에이전트(Agent)를 통해 데이터를 수집하며, 수집된 데이터는 New Relic의 클라우드 플랫폼으로 전송되어 처리 및 시각화된다.

2.1 데이터 수집 프로세스

  1. 데이터 생성: 애플리케이션 실행 중 발생하는 트랜잭션, 시스템 리소스 사용량, 로그 등이 생성된다.
  2. 에이전트 수집: 설치된 에이전트가 런타임 인스트루멘테이션(Runtime Instrumentation, 예: Java의 바이트코드 조작, Python/Node.js의 Monkey Patching 등) 또는 API 호출을 통해 데이터를 캡처한다.
  3. 데이터 전송: 수집된 텔레메트리(Telemetry, 원격 측정 데이터)가 HTTPS 프로토콜을 통해 New Relic 서버로 전송된다.
  4. 분석 및 시각화: 전송된 데이터가 인덱싱되어 대시보드, 알림, 쿼리 결과로 제공된다.

2.2 텔레메트리 데이터 유형

데이터 유형 설명 수집 대상 주요 용도
Metrics 수치화된 측정값 CPU 사용률, 메모리 점유율, 응답 시간 추세 분석 및 임계치 기반 알림
Events 특정 시점에 발생한 사건 HTTP 요청, 에러 발생, 사용자 로그인 발생 빈도 분석 및 상관관계 파악
Logs 텍스트 기반의 기록 애플리케이션 로그, 시스템 로그, 커널 로그 상세 원인 분석 및 디버깅
Traces 요청의 전체 경로 기록 분산 서비스 간 호출 경로 (Distributed Tracing) 병목 지점 및 지연 구간 식별

3. 주요 기능 및 모듈

3.1 APM (Application Performance Monitoring)

애플리케이션의 내부 동작을 심층 분석하는 핵심 모듈이다. 함수 단위의 실행 시간, 데이터베이스 쿼리 성능, 외부 API 호출 지연 등을 추적하여 코드 레벨의 최적화 지점을 찾아낸다.

3.2 Infrastructure Monitoring

호스트 서버, 컨테이너(Kubernetes, Docker), 클라우드 리소스(AWS, Azure, GCP)의 상태를 모니터링한다. CPU, 메모리, 디스크 I/O, 네트워크 트래픽 등을 실시간으로 감시한다.

3.3 Browser & Mobile Monitoring (RUM)

실제 사용자 모니터링(Real User Monitoring, RUM)을 통해 클라이언트 측의 성능을 측정한다. 페이지 로딩 속도, 자바스크립트 에러, 모바일 앱의 크래시(Crash) 리포트 등을 제공한다.

3.4 Log Management

분산된 환경의 로그를 한곳으로 통합하여 저장하고 검색한다. APM의 트레이스 ID와 로그를 연결하여 특정 요청이 어떤 로그를 남겼는지 즉시 확인할 수 있다.

3.5 Alerts & AI (AIOps)

수집된 데이터를 기반으로 시스템의 이상 징후를 탐지하고 알림을 전송한다. - 임계치 기반 알림: 설정한 수치(예: CPU > 90%) 초과 시 알림 발생. - 이상 징후 탐지(Anomaly Detection): AI가 평소 패턴을 학습하여 비정상적인 수치 변화를 자동으로 감지. - 통합 알림 채널: Slack, PagerDuty, Email, Webhook 등 다양한 외부 도구와 연동하여 즉각적인 대응 가능.

4. 설치 및 설정 가이드

4.1 설치 단계

  1. 계정 생성 및 라이선스 키 확인: New Relic 계정 생성 후 API Key 또는 License Key를 발급받는다.
  2. 에이전트 설치: 대상 환경에 맞는 설치 스크립트를 실행한다.
  3. 설정 파일 구성: 라이선스 키와 애플리케이션 이름을 설정 파일에 입력한다.
  4. 서비스 재시작: 에이전트가 런타임에 주입될 수 있도록 서비스를 재시작한다.

4.2 언어별 설치 예시

Java (Spring Boot)

// 에이전트 다운로드 후 JVM 옵션에 추가
java -javaagent:/path/to/newrelic.jar -jar my-app.jar

Node.js

// 패키지 설치
npm install newrelic

// 애플리케이션 시작 시 최상단에 요구
node -r newrelic index.js

Infrastructure (Linux)

# 가이드 제공 설치 스크립트 실행
curl -Ls https://download.newrelic.com/install/newrelic-cli-installer/scripts/install.sh | bash

5. 데이터 분석 및 시각화 (NRQL)

New Relic은 NRQL(New Relic Query Language)이라는 SQL과 유사한 전용 쿼리 언어를 사용하여 데이터를 분석한다.

5.1 NRQL 기본 문법

SELECT [함수]([속성]) FROM [이벤트명] WHERE [조건] SINCE [시간]

5.2 자주 사용되는 쿼리 예시

목적 NRQL 쿼리
평균 응답 시간 확인 SELECT average(duration) FROM Transaction WHERE appName = 'My App'
에러 발생률 계산 SELECT percentage(count(*), WHERE error is true) FROM Transaction
최다 호출 API 확인 SELECT count(*) FROM Transaction FACET name LIMIT 10
CPU 사용량 추이 SELECT average(cpuPercent) FROM SystemSample FACET hostname TIMESERIES

5.3 대시보드 시각화 예시

NRQL 쿼리 결과는 다음과 같은 다양한 위젯 형태로 대시보드에 구성할 수 있다. New Relic Dashboard Example (예시 이미지: NRQL 쿼리를 통해 생성된 시계열 차트, 파이 차트, 빌보드 형태의 대시보드)

6. 요금제 체계 및 과금 방식

New Relic은 사용한 만큼 지불하는 Consumption-based Pricing 모델을 채택하고 있다.

  • 세부 과금 기준:
    • 데이터 수집량 (Data Ingest): 플랫폼으로 전송되는 텔레메트리 데이터의 총량(GB)에 따라 과금된다. 데이터 유형(Metrics, Events, Logs, Traces)에 따라 가중치가 다르게 적용될 수 있다.
    • 사용자 수 (User Seats): 플랫폼에 접속하여 데이터를 분석하는 사용자 권한에 따라 과금된다.
      • Core User: 기본적인 데이터 조회 및 대시보드 확인이 가능한 사용자로, 무료 또는 매우 저렴하게 제공된다.
      • Full Platform User: 모든 고급 분석 기능, 쿼리 작성, 관리자 설정 권한을 가진 사용자로, 인당 비용이 청구된다.
  • 요금제 구분:
    • Free Tier: 소규모 프로젝트를 위한 무료 플랜 (제한된 데이터량 및 사용자 수 제공).
    • Standard/Pro/Enterprise: 데이터 수집량과 지원 기능, 보안 요구사항(SSO 등)에 따라 단계별 요금제 제공.

7. 타 모니터링 도구와의 비교

비교 항목 New Relic Datadog Prometheus + Grafana
유형 SaaS (Managed) SaaS (Managed) Open Source (Self-hosted)
설치 편의성 매우 높음 높음 보통 (직접 구축 필요)
통합 수준 APM-Infra-Log 통합 우수 인프라-로그 통합 우수 메트릭 중심 (로그/트레이스 별도)
학습 곡선 낮음 (UI 직관적) 보통 높음 (PromQL 학습 필요)
비용 구조 데이터량 + 사용자 수 호스트 수 + 기능별 과금 인프라 운영 비용 (무료 소프트웨어)
데이터 보관 주기 데이터 유형별 차등 보관 (최대 365일 등 설정 가능) 플랜 및 데이터 유형별 상이 (보통 15~30일 기본) 사용자 설정에 따라 무제한 가능 (스토리지 용량 의존)

8. 활용 사례 및 기대 효과

  • MTTR(Mean Time To Resolution) 단축: 장애 발생 시 알림을 통해 즉시 인지하고, 분산 트레이싱을 통해 문제의 원인이 된 특정 서비스와 코드 라인을 빠르게 찾아내어 복구 시간을 최소화한다.
  • 성능 병목 지점 제거: 느린 데이터베이스 쿼리나 외부 API 호출을 식별하여 쿼리 최적화 및 캐싱 전략을 수립함으로써 시스템 성능을 향상시킨다.
  • 인프라 비용 최적화: 실제 리소스 사용량을 분석하여 오버프로비저닝된 서버 자원을 회수하고 효율적인 스케일링 정책을 수립한다.

9. 트러블슈팅 및 FAQ

Q: 에이전트를 설치했는데 데이터가 대시보드에 나타나지 않습니다. - A: 다음 사항을 확인하십시오. 1. newrelic.ini 또는 설정 파일에 license_key가 정확히 입력되었는지 확인하십시오. 2. 서버에서 New Relic 수집 서버로의 아웃바운드 트래픽(포트 443)이 방화벽에 의해 차단되지 않았는지 확인하십시오. 3. 애플리케이션이 정상적으로 재시작되었는지 확인하십시오.

Q: NRQL 쿼리 실행 속도가 너무 느립니다. - A: SINCE 절을 사용하여 조회 기간을 좁히거나, FACET 절의 그룹화 항목 수를 제한하여 쿼리 부하를 줄이십시오.

Q: 에이전트 설치가 애플리케이션 성능에 영향을 주나요? - A: New Relic 에이전트는 매우 낮은 오버헤드로 설계되었으나, 극도로 민감한 실시간 시스템의 경우 성능 테스트를 통해 CPU/메모리 점유율을 사전에 검증하는 것을 권장합니다.

AI 생성 콘텐츠 안내

이 문서는 AI 모델(gemma-4-31b)에 의해 생성된 콘텐츠입니다.

주의사항: AI가 생성한 내용은 부정확하거나 편향된 정보를 포함할 수 있습니다. 중요한 결정을 내리기 전에 반드시 신뢰할 수 있는 출처를 통해 정보를 확인하시기 바랍니다.

이 AI 생성 콘텐츠가 도움이 되었나요?